\hypertarget{group__udi__cdc__group__desc}{
\section{\-Default descriptors for a \-U\-S\-B \-Device}
\label{group__udi__cdc__group__desc}\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}}
}
\subsection*{\-Data \-Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structudc__desc__t}{udc\-\_\-desc\-\_\-t}
\end{DoxyCompactItemize}
\subsection*{\-Defines}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{group__udi__cdc__group__desc_gad079423a5116ebac5e26628447e0d0c1}{\-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E}~2
\begin{DoxyCompactList}\small\item\em \-Two interfaces for a \-C\-D\-C device. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{\-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__udi__cdc__group__desc_ga14096700b3ed8c5168615c5c5ee1c68d}{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-S\-E\-T} (1)
\begin{DoxyCompactList}\small\item\em \-Structure for \-U\-S\-B \-Device \-Configuration \-Descriptor. \end{DoxyCompactList}\item 
\hyperlink{group__udi__cdc__group__desc_gabe317a1520896eaf568afab27dc71540}{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-R\-E\-S\-E\-T} ()
\end{DoxyCompactItemize}
\subsection*{\-Variables}
\begin{DoxyCompactItemize}
\item 
\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-W\-O\-R\-D\-\_\-\-A\-L\-I\-G\-N\-E\-D \*
\-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E \*
\hyperlink{structusb__dev__desc__t}{usb\-\_\-dev\-\_\-desc\-\_\-t} \hyperlink{group__udi__cdc__group__desc_ga9b0e293c7d3236bf90c42d808c2bc1ab}{udc\-\_\-device\-\_\-desc}
\begin{DoxyCompactList}\small\item\em \-U\-S\-B \-Device \-Descriptor. \end{DoxyCompactList}\item 
\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-W\-O\-R\-D\-\_\-\-A\-L\-I\-G\-N\-E\-D \*
\-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E \hyperlink{structudc__desc__t}{udc\-\_\-desc\-\_\-t} \hyperlink{group__udi__cdc__group__desc_ga786079ecd77f4d55ac99cc5f49e0fde7}{udc\-\_\-desc}
\begin{DoxyCompactList}\small\item\em \-U\-S\-B \-Device \-Configuration \-Descriptor filled for full and high speed. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{\-U\-D\-C structures which content all \-U\-S\-B \-Device definitions}
\begin{DoxyCompactItemize}
\item 
\-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E \hyperlink{structudi__api__t}{udi\-\_\-api\-\_\-t} $\ast$ \hyperlink{group__udi__cdc__group__desc_ga5356b021bc068e4b564577e38b44ba0e}{udi\-\_\-apis} \mbox{[}\-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E\mbox{]}
\begin{DoxyCompactList}\small\item\em \-Associate an \-U\-D\-I for each \-U\-S\-B interface. \end{DoxyCompactList}\item 
\-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E \hyperlink{structudc__config__speed__t}{udc\-\_\-config\-\_\-speed\-\_\-t} \hyperlink{group__udi__cdc__group__desc_ga75bec31a56e1233cbb933ce3391429b2}{udc\-\_\-config\-\_\-fshs} \mbox{[}1\mbox{]}
\begin{DoxyCompactList}\small\item\em \-Add \-U\-D\-I with \-U\-S\-B \-Descriptors \-F\-S \& \-H\-S. \end{DoxyCompactList}\item 
\-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E \hyperlink{structudc__config__t}{udc\-\_\-config\-\_\-t} \hyperlink{group__udi__cdc__group__desc_ga40ae5a61fbfa7e289136b2f9fd190217}{udc\-\_\-config}
\begin{DoxyCompactList}\small\item\em \-Add all information about \-U\-S\-B \-Device in global structure for \-U\-D\-C. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{\-Detailed \-Description}
with a single interface \-C\-D\-C 

\subsection{\-Define \-Documentation}
\hypertarget{group__udi__cdc__group__desc_gad079423a5116ebac5e26628447e0d0c1}{
\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}!\-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E@{\-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E}}
\index{\-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E@{\-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E}!Default descriptors for a USB Device@{\-Default descriptors for a U\-S\-B Device}}
\subsubsection[{\-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E}]{\setlength{\rightskip}{0pt plus 5cm}\#define \-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E~2}}
\label{group__udi__cdc__group__desc_gad079423a5116ebac5e26628447e0d0c1}


\-Two interfaces for a \-C\-D\-C device. 



\subsection{\-Function \-Documentation}
\hypertarget{group__udi__cdc__group__desc_gabe317a1520896eaf568afab27dc71540}{
\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}!\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-R\-E\-S\-E\-T@{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-R\-E\-S\-E\-T}}
\index{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-R\-E\-S\-E\-T@{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-R\-E\-S\-E\-T}!Default descriptors for a USB Device@{\-Default descriptors for a U\-S\-B Device}}
\subsubsection[{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-R\-E\-S\-E\-T}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-R\-E\-S\-E\-T (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{group__udi__cdc__group__desc_gabe317a1520896eaf568afab27dc71540}
\hypertarget{group__udi__cdc__group__desc_ga14096700b3ed8c5168615c5c5ee1c68d}{
\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}!\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-S\-E\-T@{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-S\-E\-T}}
\index{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-S\-E\-T@{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-S\-E\-T}!Default descriptors for a USB Device@{\-Default descriptors for a U\-S\-B Device}}
\subsubsection[{\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-S\-E\-T}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-P\-A\-C\-K\-\_\-\-S\-E\-T (
\begin{DoxyParamCaption}
\item[{1}]{}
\end{DoxyParamCaption}
)}}
\label{group__udi__cdc__group__desc_ga14096700b3ed8c5168615c5c5ee1c68d}


\-Structure for \-U\-S\-B \-Device \-Configuration \-Descriptor. 



\subsection{\-Variable \-Documentation}
\hypertarget{group__udi__cdc__group__desc_ga40ae5a61fbfa7e289136b2f9fd190217}{
\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}!udc\-\_\-config@{udc\-\_\-config}}
\index{udc\-\_\-config@{udc\-\_\-config}!Default descriptors for a USB Device@{\-Default descriptors for a U\-S\-B Device}}
\subsubsection[{udc\-\_\-config}]{\setlength{\rightskip}{0pt plus 5cm}\-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E {\bf udc\-\_\-config\-\_\-t} {\bf udc\-\_\-config}}}
\label{group__udi__cdc__group__desc_ga40ae5a61fbfa7e289136b2f9fd190217}
{\bfseries \-Initial value\-:}
\begin{DoxyCode}
 {
        .confdev_lsfs = &udc_device_desc,
        .conf_lsfs = udc_config_fshs,





}
\end{DoxyCode}


\-Add all information about \-U\-S\-B \-Device in global structure for \-U\-D\-C. 

\-Global variables of \-U\-S\-B \-Device \-Descriptor and \-U\-D\-I links. \hypertarget{group__udi__cdc__group__desc_ga75bec31a56e1233cbb933ce3391429b2}{
\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}!udc\-\_\-config\-\_\-fshs@{udc\-\_\-config\-\_\-fshs}}
\index{udc\-\_\-config\-\_\-fshs@{udc\-\_\-config\-\_\-fshs}!Default descriptors for a USB Device@{\-Default descriptors for a U\-S\-B Device}}
\subsubsection[{udc\-\_\-config\-\_\-fshs}]{\setlength{\rightskip}{0pt plus 5cm}\-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E {\bf udc\-\_\-config\-\_\-speed\-\_\-t} {\bf udc\-\_\-config\-\_\-fshs}\mbox{[}1\mbox{]}}}
\label{group__udi__cdc__group__desc_ga75bec31a56e1233cbb933ce3391429b2}
{\bfseries \-Initial value\-:}
\begin{DoxyCode}
 { {
        .desc          = (usb_conf_desc_t UDC_DESC_STORAGE*)&udc_desc,
        .udi_apis = udi_apis,
}}
\end{DoxyCode}


\-Add \-U\-D\-I with \-U\-S\-B \-Descriptors \-F\-S \& \-H\-S. 

\hypertarget{group__udi__cdc__group__desc_ga786079ecd77f4d55ac99cc5f49e0fde7}{
\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}!udc\-\_\-desc@{udc\-\_\-desc}}
\index{udc\-\_\-desc@{udc\-\_\-desc}!Default descriptors for a USB Device@{\-Default descriptors for a U\-S\-B Device}}
\subsubsection[{udc\-\_\-desc}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-W\-O\-R\-D\-\_\-\-A\-L\-I\-G\-N\-E\-D \-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E {\bf udc\-\_\-desc\-\_\-t} {\bf udc\-\_\-desc}}}
\label{group__udi__cdc__group__desc_ga786079ecd77f4d55ac99cc5f49e0fde7}
{\bfseries \-Initial value\-:}
\begin{DoxyCode}
 {
        .conf.bLength              = sizeof(usb_conf_desc_t),
        .conf.bDescriptorType      = USB_DT_CONFIGURATION,
        .conf.wTotalLength         = LE16(sizeof(udc_desc_t)),
        .conf.bNumInterfaces       = USB_DEVICE_NB_INTERFACE,
        .conf.bConfigurationValue  = 1,
        .conf.iConfiguration       = 0,
        .conf.bmAttributes         = USB_CONFIG_ATTR_MUST_SET | USB_DEVICE_ATTR
      ,
        .conf.bMaxPower            = USB_CONFIG_MAX_POWER(USB_DEVICE_POWER),



        .udi_cdc_comm              = UDI_CDC_COMM_DESC,
        .udi_cdc_data              = UDI_CDC_DATA_DESC,
}
\end{DoxyCode}


\-U\-S\-B \-Device \-Configuration \-Descriptor filled for full and high speed. 

\hypertarget{group__udi__cdc__group__desc_ga9b0e293c7d3236bf90c42d808c2bc1ab}{
\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}!udc\-\_\-device\-\_\-desc@{udc\-\_\-device\-\_\-desc}}
\index{udc\-\_\-device\-\_\-desc@{udc\-\_\-device\-\_\-desc}!Default descriptors for a USB Device@{\-Default descriptors for a U\-S\-B Device}}
\subsubsection[{udc\-\_\-device\-\_\-desc}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-O\-M\-P\-I\-L\-E\-R\-\_\-\-W\-O\-R\-D\-\_\-\-A\-L\-I\-G\-N\-E\-D \-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E {\bf usb\-\_\-dev\-\_\-desc\-\_\-t} {\bf udc\-\_\-device\-\_\-desc}}}
\label{group__udi__cdc__group__desc_ga9b0e293c7d3236bf90c42d808c2bc1ab}


\-U\-S\-B \-Device \-Descriptor. 

\-I\-N\-D\-E\-N\-T-\/\-O\-F\-F \hypertarget{group__udi__cdc__group__desc_ga5356b021bc068e4b564577e38b44ba0e}{
\index{\-Default descriptors for a U\-S\-B Device@{\-Default descriptors for a U\-S\-B Device}!udi\-\_\-apis@{udi\-\_\-apis}}
\index{udi\-\_\-apis@{udi\-\_\-apis}!Default descriptors for a USB Device@{\-Default descriptors for a U\-S\-B Device}}
\subsubsection[{udi\-\_\-apis}]{\setlength{\rightskip}{0pt plus 5cm}\-U\-D\-C\-\_\-\-D\-E\-S\-C\-\_\-\-S\-T\-O\-R\-A\-G\-E {\bf udi\-\_\-api\-\_\-t}$\ast$ {\bf udi\-\_\-apis}\mbox{[}\-U\-S\-B\-\_\-\-D\-E\-V\-I\-C\-E\-\_\-\-N\-B\-\_\-\-I\-N\-T\-E\-R\-F\-A\-C\-E\mbox{]}}}
\label{group__udi__cdc__group__desc_ga5356b021bc068e4b564577e38b44ba0e}
{\bfseries \-Initial value\-:}
\begin{DoxyCode}
 {
        &udi_api_cdc_comm,
        &udi_api_cdc_data,
}
\end{DoxyCode}


\-Associate an \-U\-D\-I for each \-U\-S\-B interface. 

